#include <iostream>
#include <vector>

class Test
{
public:
    Test() {}
    Test(int a) : a(std::make_shared<int>(a)) {}
    //委托构造
    Test(int a, char b) : Test(a)
    {
        this->b = b;
    }
    Test(int a, int b, int c) : Test(a, b)
    {
        this->c = c;
    }

protected:
    std::shared_ptr<int> a;
 

};


class Derived:Test
{
public:
    using Test::Test;//继承构造



}


